Synchronisierungskonflikte

Synchronisierungskonflikte

Konflikte k÷nnen dann auftreten, wenn an einem oder mehreren Replikaten DatenΣnderungen vorgenommen wurden.

Dieser Abschnitt enthΣlt Informationen zu folgenden Themen:

Unterschiede beim Konfliktverhalten in Access

Konflikt bei gleichzeitiger Aktualisierung

Konflikt mit eindeutigem Schlⁿssel

Gⁿltigkeitskonflikt auf Tabellenebene

Konflikt in der referenziellen IntegritΣt durch Aktualisieren

Konflikt in der referenziellen IntegritΣt durch L÷schen

Sperrkonflikt

Konflikt durch Fremdschlⁿsselverletzung

Beachtung der Gro▀-/Kleinschreibung in Replikatgruppen

Konflikte bei Teilreplikaten

Konfliktbehebung

Unterschiede beim Konfliktverhalten in Access

In Microsoft Access 95 und 97 sind bei der Synchronisierung Konflikte und Fehler aufgetreten. Synchronisierungskonflikte traten immer dann auf, wenn zwei Benutzer denselben Datensatz in einer Replikatgruppe aktualisiert haben. Die beiden Datenbanken werden dann zwar synchronisiert, aber nur eine der beiden ─nderungen wird von beiden Datenbanken ⁿbernommen. Synchronisierungsfehler traten auf, wenn ─nderungen an Daten in einer Datenbank in einer Replikatgruppe nicht in eine andere Datenbank der Replikatgruppe ⁿbernommen werden konnten, weil dies die Verletzung der referenziellen IntegritΣt oder einer anderen EinschrΣnkung zur Folge hatte.

In Access 2000 werden Ereignisse, die Konflikte und Fehler bei der Synchronisierung verursachen, einfach als Synchronisierungskonflikte betrachtet. Ein einfacher Mechanismus wird verwendet, um diese Konflikte zu erfassen und zu beheben, was den Vorgang erheblich vereinfacht. Wenn ein Konflikt auftritt, wird die ─nderung ausgewΣhlt, die den Konflikt gewinnt. Diese wird in allen Replikaten ⁿbernommen. Die ─nderung, die den Konflikt verliert, wird als Konflikt in allen Replikaten erfasst. Der Microsoft-Replikationskonflikt-Viewer, das Standardtool in Access, wird verwendet, um Synchronisierungskonflikte abzustimmen und zu beheben.

Zurⁿck zum Anfang

Konflikt bei gleichzeitiger Aktualisierung

Ein Konflikt bei einer gleichzeitigen Aktualisierung tritt dann auf, wenn zwei Replikate denselben Datensatz aktualisieren. Der Datensatz, der den Konflikt verliert, wird in der Konflikttabelle erfasst. Rufen Sie weitere Informationen zum Verwalten von DatenΣnderungen auf.

Zurⁿck zum Anfang

Konflikt mit eindeutigem Schlⁿssel

Ein Konflikt mit einem eindeutigen Schlⁿssel kann folgenderma▀en auftreten:

Zurⁿck zum Anfang

Gⁿltigkeitskonflikt auf Tabellenebene

Ein Gⁿltigkeitskonflikt auf Tabellenebene tritt dann auf, wenn Daten eingegeben werden, die auf Tabellenebene eine Gⁿltigkeitsregel verletzen, mit der die m÷glichen, in einer Tabelle einzugebenen Werte oder Datentypen eingeschrΣnkt werden. Wenn Sie auf Tabellenebene eine Gⁿltigkeitregel zum Designmaster hinzufⁿgen, ohne zu prⁿfen, ob alle vorhandenen Daten dieser Regel entsprechen, kann m÷glicherweise ein Konflikt auftreten, wenn die DesignΣnderungen mit der Replikatgruppe synchronisiert werden. In diesem Fall werden die DatensΣtze gel÷scht und in der Konflikttabelle protokolliert.

Zurⁿck zum Anfang

Konflikt in der referenziellen IntegritΣt durch Aktualisieren

Ein Konflikt in der referenziellen IntegritΣt durch Aktualisieren tritt dann auf, wenn fⁿr ein Replikat der PrimΣrschlⁿssel geΣndert wird und wenn bei einem anderen Replikat neue untergeordnete DatensΣtze hinzugefⁿgt werden, die einen Verweis zum ursprⁿnglichen PrimΣrschlⁿsselwert enthalten.

Zurⁿck zum Anfang

Konflikt in der referenziellen IntegritΣt durch L÷schen

Ein Konflikt in der referenziellen IntegritΣt durch L÷schen tritt dann auf, wenn ein PrimΣrschlⁿsseldatensatz in einem Replikat gel÷scht wird, und wenn bei einem anderen Replikat neue untergeordnete DatensΣtze hinzugefⁿgt werden, die einen Verweis zum ursprⁿnglichen PrimΣrschlⁿssel enthalten. Beim Synchronisieren der beiden Replikate werden die neuen untergeordneten DatensΣtze zum L÷schen gekennzeichnet und zur Konflikttabelle hinzugefⁿgt.

Zurⁿck zum Anfang

Sperrkonflikt

Ein Sperrkonflikt tritt dann auf, wenn der Datensatz bei der Synchronisierung nicht abgestimmt werden kann, weil ein anderer Benutzer die Tabelle gesperrt hat. Microsoft Access versucht in diesem Fall mehrmals den Datensatz zu aktualisieren. Da dies ohne Erfolg bleibt, wird die Synchronisierung angehalten und die ganze Transaktion nimmt wieder den ursprⁿnglichen Status an. Eine Fehlermeldung wird ausgegeben, es wird jedoch kein Konflikt protokolliert.

Zurⁿck zum Anfang

Konflikt durch Fremdschlⁿsselverletzung

Ein Konflikt durch eine Fremdschlⁿsselverletzung tritt dann auf, wenn ein ungⁿltiger PrimΣrschlⁿsseldatensatz vorhanden ist. Dies kann durch einen der anderen Konflikttypen verursacht werden.

Zurⁿck zum Anfang

Beachtung der Gro▀-/Kleinschreibung in Replikatgruppen

Die Anzahl der Konflikte kann sich in Replikatgruppen erh÷hen, die mehrere Datenbanktypen umfassen, wie z. B. Access und Microsoft SQL Server, bei denen sich die Sprachsortierreihenfolge oder die Beachtung der Gro▀-/Kleinschreibung beim Sortieren unterscheidet. Das kann daran liegen, dass eindeutige Schlⁿsselwerte in einer Datenbank m÷glicherweise in einer anderen Datenbank mit einer anderen Sortierreihenfolge nicht eindeutig sind. Das Problem kann sowohl indizierte Textdaten als auch Metadaten betreffen, es betrifft jedoch keine nichtindizierten Textdaten. Beim Erstellen von Replikaten mit unterschiedlicher Sortierreihenfolge muss deshalb sehr sorgfΣltig vorgegangen werden, um sicherzustellen, dass Metadaten und indizierter Text immer fⁿr beide Sortiermethoden eindeutig sind.

Zurⁿck zum Anfang

Konflikte bei Teilreplikaten

Ein Teilreplikat empfΣngt Konflikte, die mit allen Reihen des Teilreplikats in Zusammenhang stehen, dazu geh÷ren auch die Reihen, die bei der Synchronisierung zum Teilreplikat hinzugefⁿgt werden.

Zurⁿck zum Anfang

Konfliktbehebung

Wenn derselbe Datensatz in einer replizierten Datenbank in einem oder mehreren Replikaten geΣndert wird, entstehen beim Synchronisieren eines Replikats mit der Replikatgruppe Konflikte. Wenn Sie diese Konflikte beheben m÷chten, ruft Access den Microsoft-Replikationskonflikt-Viewer auf. Dieser Assistent zeigt jeden Konflikt an, und Sie k÷nnen dann manuell bestimmen, welcher geΣnderte Datensatz die richtigen Informationen enthΣlt. So beheben Sie Synchronisierungskonflikte zwischen Mitgliedern der Replikatgruppe.

Zurⁿck zum Anfang